package com.zdxlz.fcmp.common.log.annotation;

import com.zdxlz.fcmp.common.core.constant.enums.LoginTypeEnums;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @description：登陆日志记录注解
 * @author：aman
 * @date：2025/3/7 09:48
 */
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
public @interface LoginLogRecord {

    // 请求所属模块
    String module() default "";

    // 日志描述
    String value() default "";

    // 登陆类型（true：登入系统 false：登出系统）
    LoginTypeEnums loginType() default LoginTypeEnums.LOGIN;

    // 日志等级
    String level() default "INFO";

    // 插入日志描述里面的字段
    String[] field() default {};

    // 是否记录到数据库
    boolean db() default false;

}
